<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      /*
        async 异步函数
        ① 修改函数的默认返回值为：new Promise
        ② 可以使用 return 给 then 回调函数传递参数
        ③ 给 await 提供运行环境

        await 运算符 一元
        ① 只能运行在 async 的函数中
        ② 可以对任何数据类型进行运算
        ③ 对Promise对象进行运算，返回值是 resolve 的参数，其他数据类型原值返回
        ③ await 运算获取结果，是异步获取，等待 resolve 的执行。
        ④ await 后续代码都是微任务异步代码
      */

      const obj = {
        async say() {
          await 100;
        },
        fn: async function () {
          await 100;
        },

        cb: async () => {
          await 100;
        },
      };
      class Person {
        async say() {}
        static async eat() {}
      }
    </script>
  </body>
</html>
